package flex.cc.medical.dao;

import java.util.List;
import java.util.Map;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;

import flex.cc.medical.dto.entity.ImportCardEntity;

/**
*
* @author WANGCONG
* 2022年2月8日上午9:04:39
* @desc 医护类卡券序列码数据层
*/
public interface ImportCardDao extends BaseMapper<ImportCardEntity>{

	/**
	* @author R
	* 2022年02月08日 10:18:16
	* @desc 查询未被使用的卡券码以及激活码
	*/
	List<ImportCardEntity> queryNonUseCard(List<String> nonUseParamsList);
	
	/**
	* @author R
	* 2022年02月08日 10:18:16
	* @desc 更新卡券码以及激活码使用状态
	*/
	int updateCardByEntity(ImportCardEntity importCardEntity);
	
	/**
	* @author R
	* 2022年02月08日 10:18:16
	* @desc 将卡券码以及激活码初始化
	*/
	int updateInitialCard(ImportCardEntity importCardEntity);
	
	/**
	 *
	 * @author WANGCONG
	 * 2022年2月9日下午15:26:08
	 * @desc 根据卡券码、激活码查询实体信息
	 */
	ImportCardEntity getOneByParams(Map<String, Object> params);
	
	/**
	*
	* @author WANGCONG
	* 2022年2月9日下午15:42:51
	* @desc 导入卡券信息保存
	*/
	int insertVo(ImportCardEntity card);

	/**
	*
	* @author WANGCONG
	* 2022年2月10日上午10:36:31
	* @desc 分页查询导入卡券信息
	*/
	IPage<ImportCardEntity> queryListWithPage(Page<ImportCardEntity> page, ImportCardEntity cardDto);
	
	/**
	 *
	 * @author R
	 * 2022年2月11日  17:11:08
	 * @desc 根据卡券码、激活码查询实体信息
	 */
	ImportCardEntity findOneByParams(Map<String, Object> params);
}
